草庐IT

Java ByteBuffer 性能问题

全部标签

c# - .NET 应用程序中的性能监控/指标

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭4年前。Improvethisquestion我们想要收集有关我们(比如80%的WinApp)应用程序的性能数据,既包括在开发人员内部,也包括在客户站点之外。我们的目标如下:应该非常快它应该是轻量级的它应该允许跟踪/计时和统计我们应用中的许多不同类型的事件。它应该能够(有效地)收集大量数据,例如域、计算机名、用户、操作系统、内存等。收集到的所有数据都应该可以在上述所有维度上进行分析(一旦将其传输到我们的内部BI数

c# - 从 foreach 中的 Dictionary 中删除一个键会导致问题吗?或者我应该更好地构建一个新的词典?

例如:1.foreach(variteminmyDic){if(item.value==42)myDic.remove(item.key);}无论内部括号中的语句如何影响myDic,迭代器是否会正常工作?2.varnewDic=myDic.where(x=>x.value!=42).ToDictionary(x=>x.key,x=>x.value);第二种方法是好的做法吗?函数式编程和不可变? 最佳答案 第一种方法会在运行时崩溃,因为枚举器确保在枚举时没有人从基础集合中删除。第二种方法是一个不错的想法,但是C#字典是可变的,如果您可

c# - 使用 C# 和 .net 3.5 阅读 RSS 的问题

我一直在尝试编写一些例程来使用System.ServiceModel.Syndication中可用的新例程来读取RSS和ATOM提要,但不幸的是,Rss20FeedFormatter在我尝试的大约一半提要上失败了,但出现以下异常:AnerrorwasencounteredwhenparsingaDateTimevalueintheXML.只要RSS提要以下列格式表示发布日期,就会出现这种情况:Thu,16Oct0814:23:26-0700如果feed将发布日期表示为GMT,则一切顺利:Thu,16Oct0821:23:26GMT如果有某种方法可以使用XMLReaderSettings

c# - Process.StandardInput 或从 C# 代码执行的应用程序的编码问题

我对Process.StandartInput编码有疑问。我在我的Windows窗体应用程序中使用了一些进程,但输入应该是UTF-8。Process.StandardInput.Encoding是只读的,所以我不能将它设置为UTF-8,它会使用Windows默认编码,这会降低UTF-8中良好的native字符。程序中使用了两个进程:一个将输出写入文件,另一个读取。由于我可以将输出编码设置为UTF-8,因此该部分工作正常,但回读是我遇到问题的部分。我将包括我使用流程的部分。ProcessStartInfoinfo=newProcessStartInfo("mysql");info.Red

c# - 使用 CLR 存储过程可以解决哪些好问题?

我在SQLServer中使用CLR存储过程已有一段时间了,但我仍然想知道使用它们的最佳情况是什么。MSDN提供了一些使用指南,例如繁重的字符串操作(regex),或替换声明大量表变量和游标的T-SQL。我很想知道SO用户正在使用CLR存储过程以及示例/基准解决什么问题。例如,我发现CLR存储过程+SSRS是将数据操作逻辑从SSRS和T-SQL中取出并放入更易于阅读和操作的托管代码中的好方法。 最佳答案 许多需要非规范化和/或顺序操作的问题都可以由CLR很好地处理,并且可以用来显着提高性能,而不会牺牲SQL端的可用性(很多)。您可以采

C# List<T> 与 IEnumerable<T> 性能问题

你好,假设这两种方法:privateListGetProviderForType(Typetype){ListreturnValue=newList();foreach(KeyValuePairproviderin_objectProviders){if((provider.Key.IsAssignableFrom(type)||type.IsAssignableFrom(provider.Key))&&provider.Value.SupportsType(type)){returnValue.Add(provider.Value);}}returnreturnValue;}priv

c# - 遍历列表时从列表中删除元素时出现问题

我有一个循环遍历列表中的元素。我需要根据某些条件从循环中的这个列表中删除元素。当我尝试在C#中执行此操作时,出现异常。显然,不允许从正在迭代的列表中删除元素。使用foreach循环观察到该问题。有什么标准的方法可以解决这个问题吗?注意:我能想到的一种解决方案是仅出于迭代目的创建列表的副本,并在循环内从原始列表中删除元素。我正在寻找一种更好的方法来处理这个问题。 最佳答案 使用List时ToArray()方法在这种情况下有很大帮助:Listitems=newList();foreach(MyClassiteminitems.ToArr

c# - WCF契约不匹配问题

我有一个与WCF服务通信的客户端控制台应用程序,但出现以下错误:“服务器没有提供有意义的回复;这可能是由于契约(Contract)不匹配、session过早关闭或内部服务器错误造成的。”我认为这是因为契约(Contract)不匹配,但我不明白为什么。该服务本身运行良好,并且这两个部分一起工作,直到我添加了模拟代码。谁能看出哪里出了问题?这是客户端,全部用代码完成:NetTcpBindingbinding=newNetTcpBinding();binding.Security.Mode=SecurityMode.Message;binding.Security.Message.Clien

c# - 为什么 C#(相当慢)和 Win32/C 之间的性能差异?

我们正在寻求将性能关键应用程序迁移到.Net,发现c#版本比Win32/C慢30%到100%,具体取决于处理器(移动T7200处理器上的差异更明显)。我有一个非常简单的代码示例来演示这一点。为简洁起见,我将只展示C版本——c#是直接翻译:#include"stdafx.h"#include"Windows.h"intarray1[100000];intarray2[100000];intTest();intmain(intargc,char*argv[]){intres=Test();return0;}intTest(){intcalc,i,k;calc=0;for(i=0;i如果我们

C# - 基本问题 : What is '?' ?

这个问题在这里已经有了答案:Whatdoes"DateTime?"meaninC#?(7个答案)关闭9年前。我想知道?在C#中是什么意思?我看到类似这样的内容:DateTime?或int?。我想这是C#4.0特有的?我无法在谷歌中找到它,因为我不知道这个东西的名字。问题是我正在使用DateTime并且我有很多转换错误(从DateTime到DateTime?)。谢谢